package service;

import java.util.List;

import beans.Agent;
import beans.Branch;
import beans.Goods;
import beans.LogAbnormalBox;
import beans.LogAbnormalParcel;
import beans.Package;
import beans.Terminal;

import utils.PageBean;





public interface BoxAndPackageServiceInterface {

	public abstract void back(int terminalID, int boxNum, int type);

	List<Package> dealPackage(List<Package> packages, Package p, int packageID,
			Agent agent);

	void unTaken(int terminalID, int boxNum, int type, Agent agent);

	List<Package> getStorePackage(int terminalID, int boxNum);

	List<Goods> getStoreGoods(int terminalID, int boxNum);

	void takeGoods(int terminalID, int boxNum, int type, int goodsID,
			Agent agent);

	void take(int terminalID, int boxNum, int type, int packageID, Agent agent);

	List<Terminal> getTerminalByBranch(int branchId);

	List<Branch> getBranchByAgent(int agentId);

	void unLockParcel(Package p, int packageID, Agent agent);

	void unTakenGoods(int terminalID, int boxNum, int type);

	PageBean<Package> getUnTakenPakcages(int curpage, int pageSize, int agentID,
			int branchID, int terminalID, int day);

	void signParcel(String newPhone, Package p, int packageID, Agent agent,
			int problemID, int operate, int detained, String reason,
			String comment);

	void updateBoxRemark(Terminal terminal);

	void clearBox(int terminalID, int boxNum);

	List<LogAbnormalParcel> findAbnormalParcel(int terminalID, int boxNum);

	List<LogAbnormalBox> findAbnormalBox(int terminalID, int boxNum);

}